hhkb
모의해킹

피버팅과터널링_06_터널링 트래픽 캡슐화와 보안 검증

작성자 : Heehyeon Yoo|2025-12-18
# 모의해킹# PNT# Encapsulation# OpsSec# TrafficAnalysis

1. 개요

피버팅의 핵심인 터널링(Tunneling)의 패킷 레벨 구현 방식과 작전 보안(OpsSec) 검증을 위한 트래픽 분석 방법론을 기술한다. 공격자의 실수로 인한 원본 트래픽 노출, 즉 트래픽 유출(Traffic Leakage) 현상의 기술적 원인과 위험성을 정리해보자.

2. 터널링 패킷 구조(Packet Encapsulation)

터널링은 기술적으로 "패킷 안에 패킷을 숨기는" 캡슐화(Encapsulation) 과정이다.

2.1 일반패킷 vs 터널링 패킷 구조 프로토콜

  • 일반 HTTP 패킷:
    [ IP Header | TCP Header | HTTP Data ]

    • 네트워크 보안 장비(방화벽, IPS)가 HTTP Data를 열람(Deep Packet Inspection)하고 차단 정책을 적용할 수 있다.
  • SSH 터널링 패킷:
    [ IP Header (Pivot) | TCP Header (Port 22) | SSH Header | [Encrypted Data] ]

    • Outer Header: 네트워크 상에서는 단순한 SSH 트래픽으로 식별된다. 목적지 IP는 피벗 호스트다.
    • Inner Payload: 실제 공격 데이터(HTTP Request 등)는 [Encrypted Data] 영역에 암호화되어 탑재된다.
    • Decapsulation: 피벗 호스트의 SSH 데몬에 도달해야 암호화가 해제되고 원본 HTTP Data가 복원된다.

3. 트래픽 관측 지점별 분석(Observability)

피버팅의 무결성은 관측 지점에 따라 상반된 트래픽 패턴이 나타나야 한다.

3.1 Loopback 인터페이스(lo)

공격자의 로컬 시스템 내부 통신이다 (localhost:8080 <-> SSH Client).

  • 관측 결과: 평문(Cleartext) 데이터가 노출된다.
    • GET /admin/login.php HTTP/1.1
    • 어플리케이션 계층에서 생성된 데이터가 SSH 클라이언트로 전달되기 직전 단계이기 때문이다.
  • 검증: 공격 도구가 정상적으로 페이로드를 생성하고 있음을 확인하는 지점이다.

3.2 Tunnel/Ethernet 인터페이스(eth0/tun0)

실제 물리적 네트워크 또는 VPN 터널을 경유하는 통신이다 (SSH Client <-> Pivot Host).

  • 관측 결과: 암호화(Ciphertext)된 패킷만 관측되어야 한다.
    • Protocol: SSHv2, Payload: Encrypted Packet
  • 검증: 방화벽은 이를 허용된 SSH 트래픽으로 인식하며, 내부 페이로드를 볼 수 없다.

4. 작전 보안(OpsSec) 위협: 트래픽 유출

4.1 트래픽 유출(Traffic Leakage) 메커니즘

설정 오류로 인해 터널링되어야 할 패킷이 일반 네트워크 인터페이스로 직접 전송되는 현상이다.

  • 증상: eth0 인터페이스에서 HTTP 같은 평문 프로토콜이나, 공격 대상 내부 IP(10.1.20.x)가 Destination으로 찍히는 패킷이 발견된다.
  • 결과:
    1. Exploit Failure: 내부망 IP는 인터넷 라우팅이 불가능하므로 패킷이 중간 라우터에서 폐기(Drop)된다.
    2. Attribution: 공격자의 실제 IP(Source IP)가 타겟 방화벽이나 IDS 로그에 기록되어 추적의 단서가 된다.

4.2 DNS 유출(DNS Leak)

  • 현상: HTTP 트래픽은 터널링했지만, 도메인 이름을 IP로 변환하는 DNS 질의(DNS Query)가 공격자의 로컬 DNS 서버로 전송되는 경우다.
  • 대응: proxychains 설정의 proxy_dns 옵션 등을 통해 DNS 쿼리 트래픽까지 터널링해야만 완전한 익명성이 보장된다.